#ifndef _IMAGE__H_
#define _IMAGE__H_

/* Image type - contains height, width, and data */
struct Image {
    unsigned long sizeX;
    unsigned long sizeY;
    unsigned char *data;
};
typedef struct Image Image;

// quick and dirty bitmap loader...for 24 bit bitmaps with 1 plane only.
// See http://www.dcs.ed.ac.uk/~mxr/gfx/2d/BMP.txt for more info.
// if mesa ever gets glaux, let me know.
extern int ImageLoad(Image *image, char *filename);

extern int imageCreate(Image *image, int sizeX, int sizeY);

extern int imageSetPixel(Image *image, int x, int y, unsigned char r, unsigned char g, unsigned char b);

extern int imageGetPixel(Image *image, int x, int y, unsigned char *r, unsigned char *g, unsigned char *b);

#endif
